/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/*
 * frmAltaSubcategoria.java
 *
 * Created on 12/01/2012, 01:21:52 AM
 */

package Categorias;

import Beans.SubcategoriaBean;
import Blogic.SubcategoriaBLogic;
import java.util.Vector;
import javax.swing.JOptionPane;

/**
 *
 * @author orellana
 */
public class frmAltaSubcategoria extends javax.swing.JFrame {

    // Atributos de la clase
    int tipoAccion=0;

    
    public frmAltaSubcategoria(int tipo) {
        initComponents();
        //Definimos posición del formulario
        this.setLocationRelativeTo(null);
        //Definimos el cerrado de la ventana
        this.setDefaultCloseOperation(HIDE_ON_CLOSE);

         // Seteamos el titulo del formulario
        switch (tipo){
        // Alta de Subcategoria
            case 1: this.setTitle("Alta de Subcategoria");
                this.tipoAccion=1;
                break;
        // Modificación de Subcategoria
            case 2: this.setTitle("Modificar Subcategoria");
                this.tipoAccion=2;
                break;
        }
    }

     public void obtDatosSubcategoria(String idSubcategoria){
        // Variables locales
        Vector datosSubcategoria=new Vector();
        SubcategoriaBean sqlBean=new SubcategoriaBean();

        // Datos Subcategoria
        // Seteamos los datos
        sqlBean.setIdSubcategoria(idSubcategoria);
        // Realizamos la consulta
        datosSubcategoria=(new SubcategoriaBLogic().getDatosSubcategorias(sqlBean));
    }

    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jToolBar1 = new javax.swing.JToolBar();
        btnGuardar = new javax.swing.JButton();
        btnCerrar = new javax.swing.JButton();
        jLabel1 = new javax.swing.JLabel();
        jLabel2 = new javax.swing.JLabel();
        txtSubcategoria = new javax.swing.JTextField();
        jLabel3 = new javax.swing.JLabel();
        txtDescripcion = new javax.swing.JTextField();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        org.jdesktop.application.ResourceMap resourceMap = org.jdesktop.application.Application.getInstance(sistemapegasso.SistemaPegassoApp.class).getContext().getResourceMap(frmAltaSubcategoria.class);
        setTitle(resourceMap.getString("Form.title")); // NOI18N
        setName("Form"); // NOI18N

        jToolBar1.setRollover(true);
        jToolBar1.setName("jToolBar1"); // NOI18N

        btnGuardar.setIcon(resourceMap.getIcon("btnGuardar.icon")); // NOI18N
        btnGuardar.setText(resourceMap.getString("btnGuardar.text")); // NOI18N
        btnGuardar.setToolTipText(resourceMap.getString("btnGuardar.toolTipText")); // NOI18N
        btnGuardar.setFocusable(false);
        btnGuardar.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        btnGuardar.setName("btnGuardar"); // NOI18N
        btnGuardar.setPreferredSize(new java.awt.Dimension(36, 36));
        btnGuardar.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
        btnGuardar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnGuardarActionPerformed(evt);
            }
        });
        jToolBar1.add(btnGuardar);

        btnCerrar.setIcon(resourceMap.getIcon("btnCerrar.icon")); // NOI18N
        btnCerrar.setText(resourceMap.getString("btnCerrar.text")); // NOI18N
        btnCerrar.setToolTipText(resourceMap.getString("btnCerrar.toolTipText")); // NOI18N
        btnCerrar.setFocusable(false);
        btnCerrar.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        btnCerrar.setName("btnCerrar"); // NOI18N
        btnCerrar.setPreferredSize(new java.awt.Dimension(36, 36));
        btnCerrar.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
        btnCerrar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnCerrarActionPerformed(evt);
            }
        });
        jToolBar1.add(btnCerrar);

        jLabel1.setBackground(resourceMap.getColor("jLabel1.background")); // NOI18N
        jLabel1.setFont(resourceMap.getFont("jLabel1.font")); // NOI18N
        jLabel1.setForeground(resourceMap.getColor("jLabel1.foreground")); // NOI18N
        jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        jLabel1.setText(resourceMap.getString("jLabel1.text")); // NOI18N
        jLabel1.setName("jLabel1"); // NOI18N
        jLabel1.setOpaque(true);

        jLabel2.setFont(resourceMap.getFont("jLabel2.font")); // NOI18N
        jLabel2.setText(resourceMap.getString("jLabel2.text")); // NOI18N
        jLabel2.setName("jLabel2"); // NOI18N

        txtSubcategoria.setFont(resourceMap.getFont("txtSubcategoria.font")); // NOI18N
        txtSubcategoria.setText(resourceMap.getString("txtSubcategoria.text")); // NOI18N
        txtSubcategoria.setName("txtSubcategoria"); // NOI18N
        txtSubcategoria.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                txtSubcategoriaActionPerformed(evt);
            }
        });
        txtSubcategoria.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusLost(java.awt.event.FocusEvent evt) {
                txtSubcategoriaFocusLost(evt);
            }
        });

        jLabel3.setFont(resourceMap.getFont("jLabel3.font")); // NOI18N
        jLabel3.setText(resourceMap.getString("jLabel3.text")); // NOI18N
        jLabel3.setName("jLabel3"); // NOI18N

        txtDescripcion.setFont(resourceMap.getFont("txtDescripcion.font")); // NOI18N
        txtDescripcion.setName("txtDescripcion"); // NOI18N
        txtDescripcion.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                txtDescripcionActionPerformed(evt);
            }
        });
        txtDescripcion.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusLost(java.awt.event.FocusEvent evt) {
                txtDescripcionFocusLost(evt);
            }
        });

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, 527, Short.MAX_VALUE)
            .addComponent(jToolBar1, javax.swing.GroupLayout.DEFAULT_SIZE, 527, Short.MAX_VALUE)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addContainerGap(234, Short.MAX_VALUE)
                .addComponent(jLabel3)
                .addGap(222, 222, 222))
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(txtSubcategoria, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 503, Short.MAX_VALUE)
                    .addComponent(txtDescripcion, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 503, Short.MAX_VALUE))
                .addContainerGap())
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addContainerGap(205, Short.MAX_VALUE)
                .addComponent(jLabel2)
                .addGap(196, 196, 196))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addComponent(jToolBar1, javax.swing.GroupLayout.PREFERRED_SIZE, 38, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jLabel1)
                .addGap(18, 18, 18)
                .addComponent(jLabel2)
                .addGap(12, 12, 12)
                .addComponent(txtSubcategoria, javax.swing.GroupLayout.PREFERRED_SIZE, 21, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jLabel3)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(txtDescripcion, javax.swing.GroupLayout.PREFERRED_SIZE, 21, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

        pack();
    }// </editor-fold>//GEN-END:initComponents

    private void btnCerrarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnCerrarActionPerformed
        // TODO add your handling code here:
        //Cerramos el formulario
        this.setVisible(false);
    }//GEN-LAST:event_btnCerrarActionPerformed

    private void btnGuardarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnGuardarActionPerformed
        // TODO add your handling code here:
        // Pasamos de miniscula a mayuscula
//        txtSubcategoria.setText(txtSubcategoria.getText().toUpperCase());
//        txtDescripcion.setText(txtDescripcion.getText().toUpperCase());
//        // Validamos el tipo de accion a realizar
//        switch (this.tipoAccion){
//            // Alta de subcategoria
//            case 1:
//                // Variables locales
//                SubcategoriaBean sqlBean=new SubcategoriaBean();
//                Vector datosSubcategoria=new Vector();
//                // Validacion de campos
//                if(txtSubcategoria.getText().equalsIgnoreCase("")){
//                    // Nombre
//                    // Mensaje del usuario
//                    JOptionPane.showMessageDialog(null,"Capture el Nombre de la Subcategoria","Validacion",JOptionPane.INFORMATION_MESSAGE);
//                    // Movemos el foco
//                    txtSubcategoria.requestFocus();
//                }else if(txtDescripcion.getText().equalsIgnoreCase("")){
//                    // Descripcion
//                    // Mensaje del usuario
//                    JOptionPane.showMessageDialog(null,"Capture la Descripcion de la Subcategoria","Validacion",JOptionPane.INFORMATION_MESSAGE);
//                }else{
//                    // Guarda registro de subcategoria
//                    // Seteamos los datos
//                    sqlBean.setNombreSubcategoria(txtSubcategoria.getText());
//                    sqlBean.setDescripcionSubcategoria(txtDescripcion.getText());
//
//                    // Insertamos el registro
//                    datosSubcategoria=(new SubcategoriaBLogic()).execute(sqlBean);
//                    // Evaluamos el resultado
//                    if (datosSubcategoria.elementAt(0).equals("OK")){
//                        // Mensaje al usuario
//                        JOptionPane.showMessageDialog(null,"Subcategoria Registrado Satisfactoriamente","Registro",JOptionPane.INFORMATION_MESSAGE);
//                        txtSubcategoria.setText("");
//                        txtDescripcion.setText("");
//                        this.setVisible(false);
//                    } else{
//                        // Mensaje de error
//                        JOptionPane.showMessageDialog(null,"Ocurrio un Problema al Momento de Registrar la Subcategoria","Registro",JOptionPane.INFORMATION_MESSAGE);
//                    }
//                }
//                break;
//                // Modificar categoria
//            case 2:
//                break;
//        }

    }//GEN-LAST:event_btnGuardarActionPerformed

    public void altaClickSubcategoria(){

        // Pasamos de miniscula a mayuscula
        txtSubcategoria.setText(txtSubcategoria.getText().toUpperCase());
        txtDescripcion.setText(txtDescripcion.getText().toUpperCase());
        // Validamos el tipo de accion a realizar
        switch (this.tipoAccion){
            // Alta de subcategoria
            case 1:
                // Variables locales
                SubcategoriaBean sqlBean=new SubcategoriaBean();
                Vector datosSubcategoria=new Vector();
                // Validacion de campos
                if(txtSubcategoria.getText().equalsIgnoreCase("")){
                    // Nombre
                    // Mensaje del usuario
                    JOptionPane.showMessageDialog(null,"Capture el Nombre de la Subcategoria","Validacion",JOptionPane.INFORMATION_MESSAGE);
                    // Movemos el foco
                    txtSubcategoria.requestFocus();
                }else if(txtDescripcion.getText().equalsIgnoreCase("")){
                    // Descripcion
                    // Mensaje del usuario
                    JOptionPane.showMessageDialog(null,"Capture la Descripcion de la Subcategoria","Validacion",JOptionPane.INFORMATION_MESSAGE);
                }else{
                    // Guarda registro de subcategoria
                    // Seteamos los datos
                    sqlBean.setNombreSubcategoria(txtSubcategoria.getText());
                    sqlBean.setDescripcionSubcategoria(txtDescripcion.getText());

                    // Insertamos el registro
                    datosSubcategoria=(new SubcategoriaBLogic()).execute(sqlBean);
                    // Evaluamos el resultado
                    if (datosSubcategoria.elementAt(0).equals("OK")){
                        // Mensaje al usuario
                        JOptionPane.showMessageDialog(null,"Subcategoria Registrado Satisfactoriamente","Registro",JOptionPane.INFORMATION_MESSAGE);
                        txtSubcategoria.setText("");
                        txtDescripcion.setText("");
                        this.setVisible(false);
                    } else{
                        // Mensaje de error
                        JOptionPane.showMessageDialog(null,"Ocurrio un Problema al Momento de Registrar la Subcategoria","Registro",JOptionPane.INFORMATION_MESSAGE);
                    }
                }
                break;
                // Modificar categoria
            case 2:
                break;
        }

    }

    private void txtSubcategoriaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txtSubcategoriaActionPerformed
        // TODO add your handling code here:
        
    }//GEN-LAST:event_txtSubcategoriaActionPerformed

    private void txtDescripcionActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txtDescripcionActionPerformed
        // TODO add your handling code here:
        
    }//GEN-LAST:event_txtDescripcionActionPerformed

    private void txtSubcategoriaFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_txtSubcategoriaFocusLost
        // TODO add your handling code here:
        // Pasamos de miniscula a mayuscula
        txtSubcategoria.setText(txtSubcategoria.getText().toUpperCase());
    }//GEN-LAST:event_txtSubcategoriaFocusLost

    private void txtDescripcionFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_txtDescripcionFocusLost
        // TODO add your handling code here:
        // Pasamos de minuscula a mayuscula
        txtDescripcion.setText(txtDescripcion.getText().toUpperCase());
    }//GEN-LAST:event_txtDescripcionFocusLost

    /**
    * @param args the command line arguments
    */
//    public static void main(String args[]) {
//        java.awt.EventQueue.invokeLater(new Runnable() {
//            public void run() {
//                new frmAltaSubcategoria().setVisible(true);
//            }
//        });
//    }

    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton btnCerrar;
    public javax.swing.JButton btnGuardar;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JToolBar jToolBar1;
    private javax.swing.JTextField txtDescripcion;
    private javax.swing.JTextField txtSubcategoria;
    // End of variables declaration//GEN-END:variables

}
